// 4.校验内容信息是否完整 true/ok  false/notOk
function validatorContent(con) {
  // 替换 中文的 () 为英文的
  con = con.replace(/（/g, '(').replace(/）/g, ')')
  // 3.1 复制一份
  let str = con
  // 3.2 去掉所有空格
  str = str.replace(/\s/g, '')
  // 3.3 替换 % 为 小数
  str = validatorPersentSign(str)
  // 3.4 将+-/* 统一处理成 %
  str = str.replace(/\+/g, '%').replace(/\-/g, '%').replace(/\*/g, '%').replace(/\//g, '%')
  // 3.5 以 % 切割  arrlist存储了像 (((车险新车净保费) 泷千家(天山西路店)) 这种样式内容
  const arrlist = str.split('%')
  // 3.6 创建输入内容包含的项目列表
  const findList = {}
  const list = [
    {
      name: '系数(北京地区)',
      id: '01',
      value: '0.2'
    },
    {
      name: '车险传统续保净保费',
      id: '02',
      value: '0.2'
    },
    {
      name: '泷千家(天山西路店)',
      id: '03',
      value: '0.2'
    },
    {
      name: '壹杯加',
      id: '04',
      value: '0.2'
    },
    {
      name: '贡茶',
      id: '04',
      value: '0.2'
    },
    {
      name: '车险网销续保净保费',
      id: '05',
      value: '0.2'
    },
    {
      name: '业务划转扣减',
      id: '06',
      value: '0.2'
    },
    {
      name: '豪大大香鸡排超级奶爸',
      id: '07',
      value: '0.2'
    }
  ]
  // listNotOk false有不对的内容 true都是ok的
  // conNotOk 不对的内容 的详情
  let conNotOk = ''
  console.log('4 arrlist--', arrlist);
  let listNotOk = arrlist.every(item => {
    console.log('4 item--', item);
    if (isCoefficient(item)) {
      return true
    } else {
      let needfind = getNeedItem(item)
      let obj = findone(list, needfind)
      console.log('4 obj--', obj);
      if (obj.has) {
        // 判断有没有，没有就就入，length = 1
        // findList[needfind] = obj.data
        if (needfind in findList) {
          let n = findList[needfind].length + 1
          findList[needfind].length = n
        } else {
          findList[needfind] = {
            ...obj.data,
            length: 1
          }
        }
        return true
      } else {
        conNotOk = item
        return false
      }
    }
  })
  // 判断并弹出 listNotOk 为false，证明输入的内容有不对的
  if (!listNotOk) {
    alert(`44 ${conNotOk}  输入不正确，请改正`)
    return
  }
  // textarea输入的总的 字段 以数组展示
  const findListArr = Object.keys(findList)
  // 去空格
  let result = con.replace(' ', '')
  let resultId = result;
  findListArr.forEach(item => {
    let times = findList[item].length
    for (let i = 0; i < times; i++) {
      result = result.replace(item, item => {
        // 当没有返回对应的系数，可以在这写死成 0.6 方便后面计算
        return findList[item].value
      })
      resultId = resultId.replace(item, item => {
        return findList[item].id
      })
    }
  })
  // result 将对应的文字替换成的系数，可以直接eval运算
  // resultId 将每个 选项 对应的 后台 标识， 可以直接返回给后台
  return { result, resultId }
}
